home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Atari Mega Archive 1
/
Atari Mega Archive - Volume 1.iso
/
language
/
ana_m2_1.arc
/
M2_DESC.DOC
< prev
next >
Wrap
Text File
|
1989-01-06
|
5KB
|
167 lines
Modula-2/68
_____________
Modula-2/68 is a language system producing machine code for the Motorola
MC68000 family of microprocessors. The product consists of a Modula-2
compiler, linker, library modules, and documentation. This product was built
in 1985 from Smiler2 a Modula-2 compiler and linker developed at the Institut
fur Informatik of the Eidgenossische Technische Hochschule in Zurich,
Switzerland.
This modern programming language is designed for building complex software
systems. It combines low-level access to machine resources with features to
support modern design concepts for the specification of global information and
program modularity.
Language Features Include:
o Pascal Like Well Structured Programs.
o Abstract Data Types.
o Definition and Implementation Modules.
o Separate Compilation of Modules.
o Optional Run-Time Checks.
o Module Libraries can be shared.
o Access to Low-Level Hardware Dependent Facilities.
o IMPORT and EXPORT statements for specifying global procedures, variables,
and types.
o INTEGER, LONGINTEGER, CARDINAL, LONGCARDINAL, REAL, LONGREAL, BOOLEAN, CHAR,
BYTE, and BITSET data types.
o ENUMERATION, SUBRANGE, ARRAY, SET, RECORD, and PROCEDURE types for building
abstract data structures.
o Arithmetic and Logical operators.
o WHILE, FOR, REPEAT, and LOOP statements for iterative execution of
statements.
o IF, ELSEIF, and CASE statements for conditional execution of statements.
o Fast compilation.
o Compact, high-performance object code.
o Compile-time consistency checking of date and time version skews.
o Programs can call external routines written in other high level languages
in addition to assembly language routines.
o Optional run-time checking for array bounds, subrange assignment, variant
record tags, case selectors, and function without return.
o Uses the IEEE floating point format and operations for REAL data types.
o Unix style user defined directory search lists for locating symbol and
object libraries.
o Program access to Unix shell command line argument information via the ARGC
and ARGV global values.
o Reformats a Modula-2 program according to a standard set of pretty-printing
rules.
o Makes a cross reference list and program listing with numbered lines.
o Data Storage Types & Sizes:
ADDRESS 4 bytes
BITSET 4 bytes
BOOLEAN 1 byte
BYTE 1 byte
CARDINAL 4 bytes
CHAR 1 byte
INTEGER 4 bytes
LONGCARDINAL 4 bytes
LONGINTEGER 4 bytes
LONGREAL 4 bytes
POINTER 4 bytes
PROCEDURE 4 bytes
REAL 4 bytes
SCALAR1,2 or 4 bytes
SET 1,2 or 4 bytes
SHORTWORD 2 bytes
SUBRANGE 4 bytes
WORD 4 bytes
Two versions of the procedure libraries are available. One for host system
execution, the other for cross development using a different version of the
SYSTEMX run time support Module.
Binary
BufferIO
BytesOp
Convert
ConvertReal
Directory
ErrorMesg
FilePositions
Files
InOut
MathLib
MathLib0
MathLib1
NumberIO
Program
RealIO
SimpleIO
StandardIO
STORAGE
Storage
Streams
String
SYSTEM
SYSTEMX
Terminal
Text
_________________
Modula-2/68 is more than a standard compiler for use on Unix systems and
workstations. It is also a cross-development tool producing code for use on
target MC68000 family machines using other operating systems, or no operating
system at all. Cross development is done using compiler and linker options,
and a version of the Modula-2 libraries specially prepared for use on special
target systems.
o Compiler option to produce code that does not depend on a host operating
system.
o Linker option for standard Motorola S-record output.
o Linker option for specifying the absolute location of data and code.
o Linker option for specifying base addresses by module name for code and
data.
o Symbol table information for linking to existing ROMS and symbolic
debugging.
o Support in Module SYSTEM for:
ASH, BIT, CODE, REGISTER, SETREG, NEWPROCESS, TRANSFER, IOTRANSFER, and
SYSCALL.
The ASH, BIT, CODE, REGISTER, and SETREG procedures allow for the insertion of
machine code sequences that have full access to stack and frame variables.
_________________
The documentation contains thorough descriptions of compiler, linker, and
cross development options, with over 250 pages of detailed descriptions of
library procedures with many examples.
_____________________________
MC68020 is a trademark of Motorola. Modula-2/68 is a trademark of
ana-systems.